package com.yu.mapper.system;


import java.util.List;

import com.yu.entity.system.DeptConditionEntity;
import com.yu.entity.system.DeptEntity;
import io.lettuce.core.dynamic.annotation.Param;


/**
 * 部门 mapper
 *
 * @author maxinyu 该代码由maxinyu生成
 * @date 2025-06-02 15:26:06
 */
public interface DeptMapper  {
	/**
     * 查询部门信息
     *
     * @param id 部门ID
     * @return 部门信息
     */
	DeptEntity findById(Long id);

	/**
     * 添加部门
     *
     * @param deptEntity 部门信息
     * @return 结果
     */
	int insert(DeptEntity deptEntity);

	/**
     * 修改部门
     *
     * @param deptEntity 部门信息
     * @return 结果
     */
	int update(DeptEntity deptEntity);



	/**
     * 批量删除部门
     *
     * @param ids id集合
     * @param entity 部门实体
     * @return 结果
     */
	int deleteByIds(@Param("ids") List<Long> ids, @Param("entity") DeptEntity entity);

	/**
     * 批量查询部门信息
     *
     * @param ids ID集合
     * @return 部门信息
    */
	List<DeptEntity> findByIds(List<Long> ids);

	/**
	 * 根据条件查询部门列表
	 *
	 * @param deptConditionEntity 部门信息
	 * @return 部门集合
	 */
	List<DeptEntity> searchByCondition(DeptConditionEntity deptConditionEntity);

	/**
	 * 根据条件查询部门数量
	 *
	 * @param deptConditionEntity 部门信息
	 * @return 部门集合
	 */
	int searchCount(DeptConditionEntity deptConditionEntity);

	/**
	 * 删除部门
	 *
	 * @param id 部门ID
	 * @return 结果
	 */
	int deleteById(Long id);
}
